{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 知识图谱实战（第21期）第1课书面作业\n",
    "学号：115688\n",
    "\n",
    "**作业内容：**  \n",
    "根据课上讲解的几种API的调用方式，对比不同方式所获取的信息的内容的异同。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**答：**"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* wikidata\n",
    "  * 通过实体URI访问，如“http://www.wikidata.org/wiki/Speical:EntityData/Q23114.rbf”, 我理解这种方式是通过http协议通过指定实体编号及格式要求来获取信息，但是这种方式只能读取，不能修改。  \n",
    "  * 通过API调用，如“https://www.wikidata.org/w/api.php” 网址里描述的API访问方式，通过这种方式，可以很灵活地操作数据，可以查询也可以修改，返回的数据格式是json。缺点是，不能直接得到与其关联的其他实体信息，需要间接地再次逐级查询访问；  \n",
    "  * wikidata Query。这是一种GUI访问界面，这个是属于人机接口的。这种方式使用简单，但是不够灵活。  \n",
    "  * 通过SPARQL查询语言来访问。这种方式有点像数据库语言SQL一样，是一种结构化良好的操作语言，使用规范灵活。  \n",
    "  * 通过安装wikipedia的Python扩展包（pip install Wikipedia）用python程序化调用来访问，这种方式使用起来更加灵活。\n",
    "* Google Knowledge Graph\n",
    "  * 通过网页API访问（如：https:///kgsearch.googleapis.com/v1/entities:search?query=taylor+swift&key=API_KEY&limit=1&indent=True ）,这种方式与wikidata的URI API有点类似，但是其需要API keys的做法比起wikidata更有现代感，同时google的api可以支持多种操作，返回结果是Json格式；  \n",
    "  * 通过多种编程语言接口访问，如：python/java/php等，这一点与wikidata支持python有点像，但是支持更多的语言类型。  \n",
    "* 开放的中文知识图谱\n",
    "  * 我查看了一下，其API也支持SParQL以及python等多种语言。  \n",
    "* 复旦大学CN-DBpedia\n",
    "  * http访问方式，需要配合apikey使用，与google的类似。\n",
    "* 微软研究院的Probaseplus\n",
    "  * Probaseplus API接口，也是http方式访问，但是其特点是支持语义查询（或者叫概念查询）。"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
